package model

import "git.inspur.com/x/models"

type Cluster struct {
    Id                  string      `xorm:"pk" json:"id" valid:"-"`
    ClusterName         string      `json:"clusterName" valid:"-"`
    ApiserverIps        string      `json:"apiserverIps" valid:"-"`
    ClusterMasterPasswd string      `json:"clusterMasterPasswd" valid:"-"`
    Vip                 string      `json:"vip" valid:"-"`
    CreateTime          models.Time `xorm:"created" json:"createTime" valid:"-" `
}

func (c Cluster) TableName() string {
    return "fcs_cluster"
}

func GetClusterList() ([]*Cluster, error) {
    clusterList := make([]*Cluster, 0)
    err := models.Engine.Find(&clusterList)
    if err != nil {
        _ = logger.Error("GetClusterList: get cluster list error %v", err)
        return nil, err
    }
    return clusterList, nil
}

func CreateCluster(cluster *Cluster) (*Cluster, error) {
    if _, err := models.Engine.Insert(cluster); err != nil {
        _ = logger.Error("CreateOrder: insert error: %v", err)
        return nil, err
    }
    return cluster, nil
}
